<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Title</title>
	<script src="lib/react.development.js"></script>
	<script src="lib/react-dom.development.js"></script>
	<script src="lib/babel.min.js"></script>
</head>
<body>
<div id="root"></div>
</body>
<script type="text/babel">
	// zhangpeiyue
	// 如果想通过数据进行页面视图的渲染，那么必须将数据定义在state属性下。
	// state是一个对象，对象下的属性即是指定的数据。
	// 如果要更改数据，唯一合法的渠道是通过this.setState
	const root = ReactDOM.createRoot(document.querySelector("#root"));
	class App extends React.Component{
		// 声明状态的一种方案：用的较多
		// state = {
		// 	num:1
		// }
		constructor() {
			super();
			// 声明状态的另外一种方案
			this.state = {
				num:100
			}
		}
		render(){
			return (
				<h3 onClick={()=>{
					// this.state.num+=1;// 不会驱动视图。
					// 可以更改数据，数据发生改变，那么对应的视图也会发生响应
					this.setState({
						num:this.state.num+1
					})
				}}>App--{this.state.num}</h3>
			)
		}
	}
	root.render(<App/>)
</script>
</html>